package utils

import (
	"blog/Vo"
	"encoding/json"
	"fmt"
)

/*
序列化返回对象
*/
func toJsonString(obj interface{}) (int, string) {
	jsonString, err := json.Marshal(&obj)

	if err != nil {
		fmt.Println("序列化失败:", err)
		return 400, ""
	}
	return 200, string(jsonString)
}

/*
返回json对象
*/
func R(obj interface{}) string {
	//code,msg := toJsonString(obj)
	jsonResult := Vo.JsonResult{
		Code: 200,
		Msg:  obj,
	}
	message, _ := json.Marshal(&jsonResult)
	return string(message)
}

/*
默认返回成功的方法
*/
func Rok() string {
	jsonResult := Vo.JsonResult{
		Code: 200,
		Msg:  "success",
	}
	message, _ := json.Marshal(&jsonResult)
	return string(message)
}

/*
自定义的返回方法
*/
func Rresult(code int, msg string) string {
	jsonResult := Vo.JsonResult{
		Code: code,
		Msg:  msg,
	}
	message, _ := json.Marshal(&jsonResult)
	return string(message)
}

/*
返回失败的方法
*/
func Rerr() string {
	jsonResult := Vo.JsonResult{
		Code: 400,
		Msg:  "error",
	}
	message, _ := json.Marshal(&jsonResult)
	return string(message)
}
